package com.cn.xiaonuo.slbfinances.stockcontrol.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @BelongsProject: slb-reports-java
 * @Author: likui
 * @CreateTime: 2023-01-10  15:12
 * @Description: TODO
 */
@Data
@TableName("sl_shop_stock_control")
public class SlShopStockControl {
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 店铺id
     */
    private Integer shopId;

    /**
     * 店铺名称
     */
    private String shopName;

    /**
     * 当前库存
     */
    private Integer currentStock;

    /**
     * 可用库存
     */
    private Integer availableStock;

    /**
     * 入库/出库数量
     */
    private Integer quantity;

    /**
     * 库存总金额
     */
    private BigDecimal stockTotalAmount;

    /**
     * 创建时间
     */
    private Date createdTime;

    /**
     * 修改时间
     */
    private Date updatedTime;

    /**
     * 逻辑删除状态，0：未删除，1：已删除
     */
    private Integer deleted;

    /**
     * 1、专卖店库存  2、供应商库存
     */
    private Integer type;

    /**
     * 交易时间
     */
    private Date transactionTime;

    /**
     * 商品ID
     */
    private Integer productId;

    /**
     * 商品名称
     */
    private String productName;

    /**
     * 订单编号
     */
    private String serialNumber;

    /**
     * 订单id
     */
    private Integer orderId;

    /**
     * 业务类型:1、商品交易 2、厂商进货单 3退款 4支付失败 5、取消订单
     */
    private Integer businessType;

    /**
     * 库存类型:1、出库中  2、出库完成  3、入库完成  4、入库中
     */
    private Integer stockType;

    /**
     * 成本价格
     */
    private BigDecimal costPrice;

    /**
     * 进货时为（进货商家id）商品交易时（用户id）
     */
    private Integer purchaseShopId;

    /**
     * 进货时为（进货商家名称）商品交易时（用户名称）
     */
    private String purchaseShopName;

    /**
     * 单据编号(提货编号或物流编号)
     */
    private String documentNo;

    /**
     * 规格id（sl_product_repository主键id
     */
    private Integer repositoryId;

    /**
     * 商品规格名称
     */
    private String productDetailGroupName;

    /**
     * 备注
     */
    private String remarks;

    /**
     * 发货时间或退款时间
     */
    private Date shippingTime;

    /**
     * 完成时间
     */
    private Date completionTime;

    /**
     * 出库中数量
     */
    private Integer quantityDelivery;

    /**
     * 入库中数量
     */
    private Integer quantityReceipt;

    /**
     * 成本总金额
     */
    private BigDecimal totalCostAmount;

    /**
     * 交易开始时间
     */
    @TableField(exist = false)
    private String transactionBeginTime;

    /**
     * 交易结束时间
     */
    @TableField(exist = false)
    private String transactionEndTime;
}
